<?php
/**
 * Помощник вида, реализующий html-редактор на основе TinyMCE
 * 
 * @category Phorm
 * @package JQuery_View_Helper
 * @name /Phorm/JQuery/View/Helper/TinyMCE.php
 * @copyright phorm.ru
 * @since 31.05.2012
 * @author vladimir@kachalov.net
 */

class Phorm_JQuery_View_Helper_TinyMCE extends ZendX_JQuery_View_Helper_UiWidget {
	
	/**
	 * Рисуем редактор
	 *
	 * @param string $id Id HTML-элемента
	 * @param string $value Значение элемента
	 * @param array $params Массив параметров, path: путь к библиотеке, set: название сета, skin: имя скина, name: имя переменной в сете
	 * @param array $attribs Массив атрибутов HTML-элемента
	 * @return string
	 */
    
	public function tinyMCE($id, $value = null, array $params = array(), array $attribs = array()) {
		
		$attribs = $this->_prepareAttributes($id, $value, $attribs);
		
		$params['path'] = isset($params['path']) ? $this->view->BaseUrl().$params['path'] : $this->view->BaseUrl().'/ui/tinymce/';
		
		$this->jquery->addJavascriptFile($params['path'].'jquery.tinymce.js');
		$this->jquery->addJavascriptFile($params['path'].'tiny_mce.js');
		$this->jquery->addJavascriptFile($params['path'].'sets/'.$params['set'].'.js');
		
		$this->jquery->addOnLoad(sprintf('%s.language="%s";',$params['name'],'ru'));
		$this->jquery->addOnLoad(sprintf('%s.document_base_url="%s";',$params['name'],$this->view->BaseUrl()));
				
		$js = sprintf('%s("#%s").tinymce(%s);',
            ZendX_JQuery_View_Helper_JQuery::getJQueryHandler(),
            $attribs['id'],
            $params['name']
        );
        $this->jquery->addOnLoad($js);

	    return $this->view->formTextarea($id, $value, $attribs);
		
	}
	
}